% For Copyright information & comments, look at the following original file:
% keyboard_doc.txt original file name.       An idea of Bernard Gaulle 93/08/17
%%      checksum        = "57335 162 232 6545"
% Have you registered? if not, fill in the form in the REGISTER file and send
% it now to Bernard GAULLE <frenchprobg@free.fr> to support developpement.
\ifnum\catcode`\@=11\else\expandafter\catcode`\@=11\fi
\let\ifLEX\iffalse\let\ifLEXhic\iftrue%
\ifx\languagename\undefined\else\edef\l@nguagename{\languagename}\fi
\DeclareOption{french}{\edef\l@nguagename{\CurrentOption}%
                      }
\DeclareOption*{}%
\ProcessOptions%
\ifx\kbencoding\undefined%
     \def\kbencoding#1{\edef\resetat{\noexpand\catcode\string`%
                       \noexpand\@\the\catcode`\@}\makeatletter%
                       \def\@kbencoding{#1}\@@input kbconfig.tex \resetat}%
\fi%
\RequirePackage{msg}%
\AtBeginDocument{\ifx\@msgencoding\undefined%
                  \else\def\@msgencoding#1{\kbencoding{#1}}%
                 \fi}%
  \expandafter\let\expandafter\@aiguORI\expandafter=%
               \csname OT\string1\string\'\endcsname%
  \expandafter\let\expandafter\@gravORI\expandafter=%
               \csname OT\string1\string\`\endcsname%
  \expandafter\let\expandafter\@acchORI\expandafter=%
               \csname OT\string1\string\^\endcsname%
  \expandafter\let\expandafter\@tremORI\expandafter=%
               \csname OT\string1\string\"\endcsname%
  \expandafter\let\expandafter\@cediORI\expandafter=%
               \csname OT\string1\string\c\endcsname%
\def\@kbtypeout[#1]#2{\ifEightBitOutput\let\@typeset@protect\protect\fi%
                      \edef\f@tempa{#2\empty}%
                      \let\protect\relax%
                      #1{\f@tempa}\egroup}%
\def\kbtypeout{\kbIO[\typeout]}%
\def\@tempa{\newif\ifEightBitOutput\EightBitOutputfalse}%
\ifx\EightBitOutputfalse\undefined\expandafter\@tempa\fi%
\def\kbIO{\bgroup%
        \ifECM\fontencoding{OT1}\selectfont\fi%
        \let\@nobraces\@firstofone%
        \set@display@protect%
        \ifEightBitOutput%
             \def\'##1{\expandafter\@nobraces\@aiguORI##1}%
             \def\`##1{\expandafter\@nobraces\@gravORI##1}%
             \def\^##1{\expandafter\@nobraces\@acchORI##1}%
             \def\"##1{\expandafter\@nobraces\@tremORI##1}%
             \def\c##1{\expandafter\@nobraces\@cediORI##1}%
             \csname @kbspecials\endcsname%
        \else%
          \let\add@accent\@gobble%
          \ifx\kb@ansi\undefined%
           \def\set@display@protect{\let\protect\noexpand}%
          \else\def\set@display@protect{%
           \def\protect####1####2{\ifcat####2Z####2%
                                  \else OE ####2\fi}}%
          \fi%
        \fi%
        \@kbtypeout}%
\let\issuemsgio\kbtypeout%
\DeclareOption{8b}{\let\ifEightBitOutput\iftrue%
                   \def\@GobbleEmpty{}%
                   \def\dGs{ {}}%
\ifx\charsubdef\undefined\else%
                   \let\charsubdef\undefined%
                   %
                   \issuemsg[\kbtypeout]{86}(keyboard)[8b]%
\fi%
\expandafter\long\expandafter%
\def\csname GenericWarning \endcsname#1#2{\begingroup\def\MessageBreak{#1}%
        \kbtypeout{}%
        \set@display@protect\kbtypeout{#2\on@line.^^J}\endgroup}
                  }%
\DeclareOption{7b}{\let\ifEightBitOutput\iffalse%
                   \let\kbtypeout\typeout%
                   \def\dGs{\noexpand\dGs}%
\ifx\charsubdef\undefined\else%
                   \let\charsubdef\undefined%
                   %
                   \issuemsg[\kbtypeout]{86}(keyboard)[7b]%
\fi%
                  }%
\DeclareOption{ansi}{\ExecuteOptions{onlychars}}%
\DeclareOption{onlychars}{\let\ifEightBitOutput\iffalse%
       \kbencoding{ascii}%
       \def\@kbtypeout[#1]#2{%
           \InputIfFileExists{\languagename fc.tex}{}{}%
           \expandafter\def\csname\f@encoding-cmd\endcsname##1{%
                                   \expandafter\@nobraces\@gobble}%
           \def\@x@protect##1\fi##2##3{\fi\expandafter\@@x@protect\string##1+}%
           \def\noexpand##1{\string##1\@GobbleEmpty}%
           \def\@@x@protect##1##2+{##2}%
           \let\add@accent\@gobble%
           #1{#2\empty}\egroup}}%
\DeclareOption{nooutputencoding}{\let\kbtypeout\typeout}%
\def\@lKBo{\edef\f@tempa{\@kbencoding}%
           \let\f@tempg\CurrentOption%
           \ifx\ifEightBitOutput\undefined%
                \ExecuteOptions{7b}%
           \fi%
           \ifx\f@tempa\CurrentOption\else\expandafter%
                \kbencoding\expandafter{\CurrentOption}%
           \fi}%
\DeclareOption{ascii}{\let\ifEightBitOutput\iffalse%
                      \kbencoding{ascii}%
                      \let\kb@ansi\relax%
                      \def\@kbtypeout[#1]#2{\edef\f@tempa{#2\empty}%
                                            #1{\f@tempa}\egroup}%
                     }%
\DeclareOption{ansinew}{\@lKBo}%
\DeclareOption{applemac}{\@lKBo}%
\DeclareOption{cp850}{\@lKBo}%
\DeclareOption{decmulti}{\@lKBo}%
\DeclareOption{default}{\kbencoding{latin9}}%
\DeclareOption{latin1}{\@lKBo}%
\DeclareOption{latin9}{\@lKBo}%
\DeclareOption{next}{\@lKBo}%
\DeclareOption{noutf8}{%
              \def\@inpenc@test{%
           \issuemsg[\kbtypeout]{78}(keyboard)%
               \stop%
                               }%
                      }%
\DeclareOption{utf8}{\@lKBo}%
\DeclareOption*{\@lKBo}%
\def\f@tempf{\edef\f@tempd{utf8}%
             \ifx\f@tempd\@kbencoding%
              \else%
      \let\f@tempb\@kbencoding\expandafter%
      \kbencoding\expandafter{\f@tempd}%
      \let\@kbencoding\f@tempb%
             \fi}%
\def\f@tempe#1/{\f@tempa#1,}
\def\f@tempa#1,{\def\f@tempd{#1}\edef\f@tempb{noutf8}%
    \def\f@tempc{\ifx\f@tempd\f@tempb\else\expandafter\f@tempf\fi\f@tempa}%
    \ifx\f@tempd\empty\expandafter\@gobble\else\expandafter\f@tempc\fi}%
\ifx\f@tempg\undefined%
    \expandafter\let\expandafter\f@tempg\csname opt@keyboard.sty\endcsname%
\fi%
\ifx\f@tempg\empty%
 \ifx\UTFviii@two@octets\undefined%
\issuemsg[\kbtypeout]{79}(keyboard)%
 \fi%
\else
\expandafter\f@tempe\f@tempg,/\relax%
\fi%
\InputIfFileExists{keyboard.cfg}{}{}%
\InputIfFileExists{keyboard.dat}{}{}%
\ifx\undefined\@kbencoding\ExecuteOptions{default}\fi%
\ProcessOptions%
\ProvidesPackage{keyboard}[2005/02/25 keyboard definitions now loaded.]  
\def\@tempa{\ErrFrench}
\ifx\ifFLA\@tempa%
\issuemsg[\kbtypeout]{74}(keyboard)%
\stop%
\fi%
\def\@tempa#1{\issuemsg[\kbtypeout]{57}(keyboard)[#1]%
        %
        %
             }%
\@tempa{V5.4}%
\endinput%
